package JDBC;

import java.sql.*;

public class jdbcdemo03 {
    public static void main(String[] args) {

    Statement cc=null;
    Connection bb =null;
    ResultSet rs =null;
        try {
                try {
                        // 1 注册驱动
                        Class.forName("com.mysql.jdbc.Driver");
                        // 2: 获取连接对象
                        bb = DriverManager.getConnection("jdbc:mysql://localhost:3306/db3", "root", "root118");
                        // 3 :定义sql
                        String aa = "select * from account";
                        // 4 获取执行sql的对象
                cc = bb.createStatement();
                // 5 执行sql
                rs = cc.executeQuery(aa);
                // 6 处理结果
                //  循环判断游标是否到达了最后一行  while和for循环都可以
                while(rs.next()){
                //获取数据
                int mm = rs.getInt(1);
                String nn = rs.getString("name");
                double xx = rs.getDouble(3);
                System.out.println(mm + "------" + nn +"------" + xx );
                }     //  这样使用循环来输出表中的全部数据,能更加简便,能打印出表中的全部数据


                 /*  / / 6.1  让光标向下移动一行
                  rs.next();
                  //6.2 获取数据
                int mm = rs.getInt(1);
                String nn = rs.getString("name");
                double xx = rs.getDouble(3);
                System.out.println(mm + "------" + nn +"------" + xx );
*/
                } catch (SQLException throwables) {
                throwables.printStackTrace();
                }

                } catch (ClassNotFoundException e) {
                e.printStackTrace();
                }finally {
                // 7释放资源
                // 为了防止空指针异常
                if (rs!= null){
                try {
                rs.close();
                } catch (SQLException throwables) {
                throwables.printStackTrace();
                }
                }
                if (cc!= null){
                try {
                cc.close();
                } catch (SQLException throwables) {
                throwables.printStackTrace();
                }
                }
                if (bb!= null){
                try {
                bb.close();
                } catch (SQLException throwables) {
                throwables.printStackTrace();
                }
                }
                }
                }
                }